
var generateMixed=function(n){


  var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
 
     var res = "M";
     for(var i = 0; i < n ; i ++) {
         var id = Math.ceil(Math.random()*35);
         res += chars[id];
     }
     return res;
}

var express = require('express');

var path = require('path');


var favicon = require('serve-favicon');

var logger = require('morgan');

var cookieParser = require('cookie-parser');

var bodyParser = require('body-parser');

var Config={}
var vrimage_id=generateMixed(10);
Config[vrimage_id]={local:true,src:path.join(__dirname,'./public/static/images/sky.jpg')};
 
var argv=new evi().getArgv();  
if(argv.file){
  vrimage_id=generateMixed(10);
  Config[vrimage_id]={local:true,src:	argv.file};
}else if(argv.url){ 
  vrimage_id=generateMixed(10);
  Config[vrimage_id]={local:false,src: argv.url};
}

var app = express();

// view engine setup

app.set('views', path.join(__dirname, 'views'));



app.set('view engine', 'ejs');


var session = require('express-session');


app.use(cookieParser('O123456'));


app.use(session({
  cookie: {
    domain: '.ms.com'
  },
  secret: 'O123456',
  key: null,
  cookie: {
    maxAge: 60 * 60 * 1000 * 4
  },
  resave: false,
  saveUninitialized: true,
}));

// uncomment after placing your favicon in /public
app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));


app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
  extended: false
}));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));




var index = require('./routes/index');

app.use('/', index(Config));


var userimage = require('./routes/userimage');

app.use('/userimage', userimage(Config,__dirname));


app.use(function (req, res, next) {
  var err = new Error('Not Found');
  err.status = 404;
  next(err);
});

// error handler

app.use(function (err, req, res, next) {
  // set locals, only providing error in development
  res.locals.message = err.message;
  res.locals.error = req.app.get('env') === 'development' ? err : {};
  // render the error page
  res.status(err.status || 500);
  res.render('error');
});

///app.runapp






/**
 * Module dependencies.
 */

var debug = require('debug')('website:server');
var http = require('http');

/**
 * Get port from environment and store in Express.
 */



/**
 * Create HTTP server.
 */

var server = http.createServer(app);

/**
 * Listen on provided port, on all network interfaces.
 */
app.runapp = function (port) {
  app.runapp = function () {

  }
  if (port == null) {
    port = normalizePort(process.env.PORT || '3000');
  }
  app.set('port', port);
  server.listen(port);
  server.on('error', onError);
  server.on('listening', onListening);

  /**
   * Normalize a port into a number, string, or false.
   */

  function normalizePort(val) {
    var port = parseInt(val, 10);

    if (isNaN(port)) {
      // named pipe
      return val;
    }

    if (port >= 0) {
      // port number
      return port;
    }

    return false;
  }

  /**
   * Event listener for HTTP server "error" event.
   */

  function onError(error) {
    if (error.syscall !== 'listen') {
      throw error;
    }

    var bind = typeof port === 'string' ?
      'Pipe ' + port :
      'Port ' + port;

    // handle specific listen errors with friendly messages
    switch (error.code) {
      case 'EACCES':
        console.error(bind + ' requires elevated privileges');
        process.exit(1);
        break;
      case 'EADDRINUSE':
        console.error(bind + ' is already in use');
        process.exit(1);
        break;
      default:
        throw error;
    }
  }

  /**
   * Event listener for HTTP server "listening" event.
   */

  function onListening() {
    var addr = server.address();
    var bind = typeof addr === 'string' ?
      'pipe ' + addr :
      'port ' + addr.port;
    debug('Listening on ' + bind);
  }
 
  var load = function () {
    var webform= document.getElementById('webform')
    webform.className = "webform";
    webform.src = "http://localhost:3000/"+vrimage_id+"/"
  }
  
  if ( document.getElementById('webform') != null) {
    load()
  }else{
    window.onload=load;
  }
 console.log(vrimage_id)
}
app.runapp();